home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 3 / CD ACTUAL 3.iso / linux / system / httpd-3.0-t / httpd-3 / usr / local / lib / httpd / README-SOCKS < prev    next >
Encoding:
Text File  |  1995-03-29  |  5.1 KB  |  148 lines

  1.  
  2. SOCKS access for MS-Windows Mosaic
  3. ----------------------------------
  4.  
  5. The CERN httpd can now provide SOCKS access for standard MS-Windows
  6. Mosaic 2.0alpha2 clients.  This is probably the only README file you
  7. need to read. 
  8.  
  9.  
  10. BACKGROUND
  11. ----------
  12.  
  13. Some recent changes to the CERN WWW library code allow redirection of
  14. requests from WWW clients. 
  15.  
  16. In summary, this mechanism allows clients compliant with the CERN
  17. library to be pointed at an httpd daemon, which will satisfy WWW
  18. requests on their behalf.  Win-Mosaic 2.0alpha2 is such a client. 
  19.  
  20. Thus, this can be used to provide proxied Internet access to Win-Mosaic
  21. clients that cannot themselves connect directly to Internet resources,
  22. because they are inside an Internet `Firewall'. 
  23.  
  24. This can be got working in two ways:
  25.  
  26.  1. You may run a proxying daemon (such as CERN's httpd 2.17beta) on
  27.     a system which does have direct Internet access -- such as  your
  28.     Internet  Firewall  bastion  system  itself  --  and  point your
  29.     Win-Mosaic clients at this.  The disadvantage of  this  is  that
  30.     you  have to run another, large piece of software (the httpd) on
  31.     your bastion; I was not happy to do this. 
  32.  
  33. or
  34.  
  35.  2. You  may  build  a  SOCKS-compliant version of this proxy httpd,
  36.     which can then run on an _internal_ host, and can  still  access
  37.     Internet resources on behalf of its Win-Mosaic clients, thus:
  38.  
  39.         Win Mosaic -> SOCKSified httpd -> sockd -> Internet
  40.                                        or
  41.                                        -> direct -> local 
  42.  
  43.     The  advantage  of  this  to SOCKS users is that Internet access
  44.     remains governed by the  configuration  of  the  sockd  on  your
  45.     Firewall  bastion.   
  46.  
  47.     (Note  that this is a scheme already pioneered by Dick St Peters
  48.     <stpeters@spare-parts.crd.ge.com> for use with Mac-Mosaic, using
  49.     an  earlier  version of WWW redirection mechanism.  However, the
  50.     new WWW  Library  mechanism  makes  implementation  considerably
  51.     simpler.)
  52.                     
  53.  
  54. THE SOCKSIZED HTTPD
  55. -------------------
  56.  
  57. The SOCKSification of the CERN httpd is relatively simple with SOCKS
  58. version 2.2.  Just a question of SOCKSizing only the WWW library calls
  59. and not those that the daemon uses for local Win-Mosaic client
  60. connections!  (see later)
  61.  
  62. The distribution of the CERN httpd (2.17beta) has all the required
  63. changes made to it for SOCKS.  After unpacking the distribution:
  64.  
  65.  1. cd ./WWW
  66.     
  67.  2. Edit  the  file  `BUILD', to set values for the two variables at
  68.     the top:
  69.  
  70.         SOCKSLIB        set this to point to the location of
  71.                         your ready-built SOCKS library; this
  72.                         must be Version 4.2 (or later) built
  73.                         with the -DSHORTENED_RBIND option.
  74.  
  75.         SOCKS_FLAGS     set this to "-DSOCKS" to enable the
  76.                         SOCKS code
  77.  
  78.  3. Type `./BUILD'    
  79.  
  80.  
  81.     Everything  should  now  build  for  you.  To use your SOCKSized
  82.     httpd  you   also   need   a   configuration   file,   typically
  83.     /etc/httpd.conf.   A simple yet adequate version of this file is
  84.     this:
  85.             
  86.         pass http:*
  87.         pass ftp:*
  88.         pass wais:*
  89.         pass gopher:*
  90.         fail news:*
  91.         fail *
  92.  
  93.  
  94.        (An aside to explain this file, if you care:
  95.  
  96.         The  `pass'  lines  allow access to remote resources of each
  97.         specified type.  The `fail' line at the end blocks access to
  98.         any  local  resources  (ie, on the system where the httpd is
  99.         running). 
  100.                 
  101.         For   more   details   on  the  syntax  available  in  httpd
  102.         configuration files, including the the very  useful  use  of
  103.         CACHES,  and  for  how to control which local client systems
  104.         nay use your proxy, see the URL:
  105.                                 
  106.             http://info.cern.ch/hypertext/WWW/Daemon/User/Guide.html
  107.  
  108.  
  109.  4. You can now start your proxy server.  To run it, listenin on port
  110.     80, and logging to a logfile, as root use a command like:
  111.     
  112.             httpd -p 80 -l logfile
  113.  
  114.     There's  also a -v command for verbose output of what its doing,
  115.     if you hit problems and want to try to work out why. 
  116.  
  117.  
  118.  5. Next you must configure your SOCKS server sockd to allow connections
  119.     outwards from the httpd daemon.
  120.  
  121.     By  default,  the  daemon will change uid to `nobody' and gid to
  122.     `nogroup' when retrieving a request (though you can  change  the
  123.     values using the configuration options `UserId' and `GroupId' in
  124.     your /etc/httpd.conf file).  Thus, this is the  `user'  who  the
  125.     SOCKS  request  will  appear  to have come from.  Make sure that
  126.     your sockd allows it.
  127.         
  128.  
  129.  7. Now you must point your Win-Mosaic clients at this proxy.  
  130.     Remember that you MUST have Win-Mosaic 2.0alpha2.  To define your 
  131.     proxy server, edit lines of this form in your MOSAIC.INI file:
  132.  
  133.       [proxy information]
  134.       http_proxy=http://proxyhost.your.dom:80/
  135.       ftp_proxy=http://proxyhost.your.dom:80/
  136.       wais_proxy=http://proxyhost.your.dom:80/
  137.       gopher_proxy=http://proxyhost.your.dom:80/
  138.  
  139.  
  140. Let me know if you hit any problems!
  141.  
  142.  
  143.                         I.      (14-March-94)
  144.  
  145.  
  146. Ian Dunkin <imd1707@ggr.co.uk>. 
  147.  
  148.